草庐IT

reflection - 去戈朗 : anonymous structs & Reflection combination

全部标签

ruby-on-rails - 使用 Unicorn + Rack 进行带外垃圾收集

我正尝试在我的RubyonRails应用程序中运行带外垃圾收集(一旦请求完成响应)。我在config.ru中添加了以下内容:#ThisfileisusedbyRack-basedserverstostarttheapplication.require::File.expand_path('../config/environment',__FILE__)beginrequire'unicorn/oob_gc'rescueLoadError,NameErrorend#Out-of-bandGC,runsGCafterevery10threquestandaftertheresponse#h

ruby - 在 Ruby 中,当没有正确的英语 "<verb>able"时,mixins 的命名约定是什么?

示例:我有一个Person类和一个Role类。我想将Role和Person中的角色功能提取到混合中。我得到了两个mixins:Actable包含在Role中,Adaptable用于Person。我有时想不出合适的英文单词。在上面的例子中,适应性似乎更适合角色而不是人,因为角色可以适应,因此是适应性强的。一个更好的名字是versatile但这打破了mixin名字以...able结尾的惯例。(虽然它仍然是一个形容词。)另一个例子是当我想添加一个允许检查的模块时,如果一个人被允许查看其他人。你如何找到以...结尾的名字?Viewable似乎不合适,可以查看的人应该是可见的。我现在坚持使用sh

ruby-on-rails - pg_search 使用 associated_against 给出错误 "column [model_name].[associated_column_name] does not exist"

我正在尝试使用pg_search来搜索关联模型。当我运行搜索时,出现错误“PG::Error:ERROR:columnplans.namedoesnotexist”。我正在“计划”模型中运行搜索,并尝试针对“地点”与列“名称”的关联进行搜索。连接这些的has_many:through模型是多态的。不知何故,sql查询将两者结合起来并抛出错误。我已经运行了associated_against迁移(railsgpg_search:migration:associated_against),搜索了文档,并寻找其他有错误的人,但一无所获,一定是我只是忽略了一些东西。如果我只是删除plan.rb

ruby - Rails 3 db :migrate 的未定义方法 `visitor'

我在Rails3中进行数据库迁移时遇到异常。undefinedmethod`visitor'for#编辑请查看解决方案here.在我的项目中没有出现字符串visitor所以我很困惑。这是完整的转储:$rakedb:migrate--trace**Invokedb:migrate(first_time)**Invokeenvironment(first_time)**Executeenvironment**Invokedb:load_config(first_time)**Invokerails_env(first_time)**Executerails_env**Executedb:l

ruby-on-rails - 运行 "bin/rake assets:precompile"时未设置 I18n 加载路径!

我正在使用I18n-js,我的客户端I18n.t调用在生产环境中运行时都会返回翻译缺失消息。开发测试一切正常。这个问题的根源似乎在于Assets管道。I18n.load_path不包含我的任何翻译(当运行bin/rakeassets:precompile时)它只包含以下路径:["/home/chris/.rvm/gems/ruby-1.9.3-p125@Project/gems/activesupport-3.2.3/lib/active_support/locale/en.yml","/home/chris/.rvm/gems/ruby-1.9.3-p125@Project/gems

ruby-on-rails - Ruby on Rails + 设计 + I18n : how to set locale?

我在ApplicationController中使用before_filter为我的应用程序设置语言环境:classApplicationController它适用于我编写的Controller。但是所有devise的消息仍然是英文。在config/application.rb中设置config.i18n.default_locale="uk"(或其他)有效,所以我猜问题在于设计的Controller确实不要使用我的before_filter(可能它根本不继承ApplicationController(?))。如何解决这个问题?如何让设计使用我的语言环境?

ruby-on-rails - rails 4 什么时候需要 "inverse_of"?

我是第一次使用Rails4开发Web应用程序。我正在使我所有的模型关联成为双向的,并在任何允许的地方使用inverse_of。通过阅读文档,我形成了这样的印象,即这可能是最佳实践,但从来没有在任何地方真正清楚地说明这一点。对于经验丰富的Rails开发人员在这方面的任何一般性建议,我将不胜感激。我希望这个问题不会太模糊以至于在这里没有值(value)。谢谢!更新:除了非标准名称之外,似乎还有两种主要的额外情况需要显式设置inverse_of:对于INVALID_AUTOMATIC_INVERSE_OPTIONS(http://www.rubydoc.info/docs/rails/Act

ruby-on-rails - 在 Rails 4.2 中有许多 'finder_sql' 替换

我有一个关联需要一些连接/自定义查询。当试图弄清楚如何实现它时,重复的响应是finder_sql。但是在Rails4.2(及更高版本)中:ArgumentError:Unknownkey::finder_sql我执行连接的查询如下所示:'SELECTDISTINCT"tags".*'\'FROM"tags"'\'JOIN"articles_tags"ON"articles_tags"."tag_id"="tags"."id"'\'JOIN"articles"ON"article_tags"."article_id"="articles"."id"'\'WHEREarticles"."u

ruby - 为什么mac下Ruby下有很多 "fsevent_watch"的实例?

现在我有21个“fsevent_watch”实例,其父进程和进程组是“ruby”。我正在开发一个Rails项目,但目前没有任何项目在运行。我之前启动的服务器是使用cntrl+C关闭的。我在Mac上。它是如何创建的?ruby应用关闭后不应该关闭吗? 最佳答案 这是由在您的Rails应用程序后台运行的spring服务器引起的。您可以通过以下方式检查spring状态,springstatus然后,停止spring服务器,springstop这将终止/关闭您看到的所有事件进程。 关于ruby-为

ruby - super(&nil) 在 ruby​​ 中做什么?

我正在阅读thesourcecodeforconcurrent-ruby,并遇到了这行ruby​​代码。definitialize(*args,&block)super(&nil)#有人可以向我解释一下它应该做什么吗? 最佳答案 您必须首先了解此处使用的&运算符。参见示例:#The&hereconvertsablockargumenttoaprocdefa(&blk)end#The&hereconvertstheproctoablocka(&Proc.new{true})在proc=>block的情况下,它也可以将一些对象变成pro